package com.day03;

/**
 * 分支结构之二: switch-case
 * <p>
 * switch(表达式){
 * case 常量1:
 * 执行语句1;
 * break;
 * <p>
 * 。。。
 * <p>
 * default:
 * 执行语句;
 * break;
 * }
 * 2.说明:
 * switch后面是表达式，根据表达式的值，去匹配case中的各个常量，一旦匹配成功，则进入相应的case结构中，调用其执行语句。
 * 当调用完执行语句后，则仍然继续向下执行其他case结构中的执行语句，直到遇到break关键字或此switch-case结构末尾为止。
 * 3.break,可以使用在switch-case结构中，表示一旦执行到此关键字，就跳出switch-case结构
 * 4.default是如果没有匹配的case，就执行default下的语句
 * 5.switch表达式，只能是如下的6种数据类型之一:
 * byte,short,char,int,枚举类型，String类型(jdk7.0)
 *
 * 6.case后面只能声明常量，不能声明范围。
 *
 * 7.break关键字是可选的。
 *
 * 8.default：相当于if-else结构中的else
 * default是可选的，而且位置是灵活的。
 */
public class SwitchCaseTest {
    public static void main(String[] args) {

//        int j = 0;
//        while (j < 10) {
//            int number = 0;
//            switch (number) {
//
//                case 0:
//                    j++;
//                    System.out.println("zero");
//                    break;
//                case 1:
//                    System.out.println("one");
//                    break;
//                case 2:
//                    System.out.println("two");
//                    break;
//                case 3:
//                    System.out.println("three");
//                    break;
//                default:
//                    System.out.println("other");
//            }
//        }

        int i = 10;
        int numdemo = 12;
        while (i < 20) {
            switch (numdemo) {
                case 12:

                    System.out.println(numdemo);
                    //直接跳出switch，不执行switch后面的逻辑。
                    break;


                case 13:
                    System.out.println("结束");
            }

            i++;
        }




        String season = "summer";
        switch (season) {
            case "spring":
                System.out.println("春暖花开");
                break;
        }
    }
}
